package org.hzero.exam.api.dto;

import io.swagger.annotations.ApiModelProperty;
import org.hzero.boot.platform.lov.annotation.LovValue;
import org.hzero.core.base.BaseConstants;
import org.hzero.export.annotation.ExcelColumn;
import org.hzero.export.annotation.ExcelSheet;
import java.math.BigDecimal;

/**
 * @author 马旭阳
 * @date2019/8/5
 * ------------订单明细DTO类
 */
@ExcelSheet(zh = "订单明细", en = "OrderItem")
public class OrderItemDTO {

    @ExcelColumn(zh = "订单编号", en = "orderNumber")
    @ApiModelProperty("订单编号")
    private String orderNumber;
    @ExcelColumn(zh = "公司名称", en = "companyName")
    @ApiModelProperty("公司名称")
    private String companyName;
    @ExcelColumn(zh = "客户名称", en = "customerName")
    @ApiModelProperty("客户名称")
    private String customerName;
    @ExcelColumn(zh = "订单日期", en = "orderDate")
    @ApiModelProperty("订单日期")
    private String  orderDate;
    @ApiModelProperty("订单状态")
    @LovValue(lovCode = "HZERO.ORDER.STATUS.TEST")
    private String orderStatus;
    @ExcelColumn(zh = "订单状态", en = "orderStatusing")
    private String orderStatusMeaning;
    @ExcelColumn(zh = "订单金额", en = "orderAmount", pattern = BaseConstants.Pattern.TB_ONE_DECIMAL)
    @ApiModelProperty("订单金额")
    private BigDecimal orderAmount;
    @ExcelColumn(zh = "行号", en = "lineNumber")
    @ApiModelProperty("行号")
    private Long lineNumber;
    @ExcelColumn(zh = "产品Id", en = "itemId")
    @ApiModelProperty("产品Id")
    private Long itemId;
    @ExcelColumn(zh = "物料描述", en = "itemDescription")
    @ApiModelProperty("物料描述")
    private String itemDescription;
    @ExcelColumn(zh = "数量", en = "orderQuantity",pattern = BaseConstants.Pattern.TB_ONE_DECIMAL)
    @ApiModelProperty("数量")
    private BigDecimal orderQuantity;
    @ExcelColumn(zh = "产品单位", en = "orderQuantityUom")
    @ApiModelProperty("产品单位")
    private String orderQuantityUom;
    @ExcelColumn(zh = "销售单价", en = "unitSellingPrice",pattern = BaseConstants.Pattern.TB_ONE_DECIMAL)
    @ApiModelProperty("销售单价")
    private BigDecimal unitSellingPrice;
    @ExcelColumn(zh = "行金额", en = "lineAmount",pattern = BaseConstants.Pattern.TB_ONE_DECIMAL)
    @ApiModelProperty("行金额")
    private BigDecimal lineAmount;
    @ExcelColumn(zh = "备注", en = "description")
    @ApiModelProperty("备注")
    private String description;

    private String companyNumber;

    private String customerNumber;

    private String itemCode;

    private String addition1;
    private String addition2;
    private String addition3;
    private String addition4;
    private String addition5;

    public String getAddition1() {
        return addition1;
    }

    public void setAddition1(String addition1) {
        this.addition1 = addition1;
    }

    public String getAddition2() {
        return addition2;
    }

    public void setAddition2(String addition2) {
        this.addition2 = addition2;
    }

    public String getAddition3() {
        return addition3;
    }

    public void setAddition3(String addition3) {
        this.addition3 = addition3;
    }

    public String getAddition4() {
        return addition4;
    }

    public void setAddition4(String addition4) {
        this.addition4 = addition4;
    }

    public String getAddition5() {
        return addition5;
    }

    public void setAddition5(String addition5) {
        this.addition5 = addition5;
    }

    public String getCompanyNumber() {
        return companyNumber;
    }

    public void setCompanyNumber(String companyNumber) {
        this.companyNumber = companyNumber;
    }

    public String getCustomerNumber() {
        return customerNumber;
    }

    public void setCustomerNumber(String customerNumber) {
        this.customerNumber = customerNumber;
    }

    public String getItemCode() {
        return itemCode;
    }

    public void setItemCode(String itemCode) {
        this.itemCode = itemCode;
    }

    public String getOrderStatusMeaning() {
        return orderStatusMeaning;
    }

    public void setOrderStatusMeaning(String orderStatusMeaning) {
        this.orderStatusMeaning = orderStatusMeaning;
    }

    public String getOrderNumber() {
        return orderNumber;
    }

    public void setOrderNumber(String orderNumber) {
        this.orderNumber = orderNumber;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getOrderDate() {
        return orderDate;
    }

    public void setOrderDate(String orderDate) {
        this.orderDate = orderDate;
    }

    public String getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {
        this.orderStatus = orderStatus;
    }

    public Long getLineNumber() {
        return lineNumber;
    }

    public void setLineNumber(Long lineNumber) {
        this.lineNumber = lineNumber;
    }

    public Long getItemId() {
        return itemId;
    }

    public void setItemId(Long itemId) {
        this.itemId = itemId;
    }

    public BigDecimal getOrderQuantity() {
        return orderQuantity;
    }

    public void setOrderQuantity(BigDecimal orderQuantity) {
        this.orderQuantity = orderQuantity;
    }

    public String getOrderQuantityUom() {
        return orderQuantityUom;
    }

    public void setOrderQuantityUom(String orderQuantityUom) {
        this.orderQuantityUom = orderQuantityUom;
    }

    public BigDecimal getUnitSellingPrice() {
        return unitSellingPrice;
    }

    public void setUnitSellingPrice(BigDecimal unitSellingPrice) {
        this.unitSellingPrice = unitSellingPrice;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public BigDecimal getOrderAmount() {
        return orderAmount;
    }

    public void setOrderAmount(BigDecimal orderAmount) {
        this.orderAmount = orderAmount;
    }

    public String getItemDescription() {
        return itemDescription;
    }

    public void setItemDescription(String itemDescription) {
        this.itemDescription = itemDescription;
    }

    public BigDecimal getLineAmount() {
        return lineAmount;
    }

    public void setLineAmount(BigDecimal lineAmount) {
        this.lineAmount = lineAmount;
    }

    @Override
    public String toString() {
        return "OrderItemDTO{" +
                "orderNumber='" + orderNumber + '\'' +
                ", companyName='" + companyName + '\'' +
                ", customerName='" + customerName + '\'' +
                ", orderDate='" + orderDate + '\'' +
                ", orderStatus='" + orderStatus + '\'' +
                ", orderStatusMeaning='" + orderStatusMeaning + '\'' +
                ", orderAmount=" + orderAmount +
                ", lineNumber=" + lineNumber +
                ", itemId=" + itemId +
                ", itemDescription='" + itemDescription + '\'' +
                ", orderQuantity=" + orderQuantity +
                ", orderQuantityUom='" + orderQuantityUom + '\'' +
                ", unitSellingPrice=" + unitSellingPrice +
                ", lineAmount=" + lineAmount +
                ", description='" + description + '\'' +
                ", companyNumber='" + companyNumber + '\'' +
                ", customerNumber='" + customerNumber + '\'' +
                ", itemCode='" + itemCode + '\'' +
                ", addition1='" + addition1 + '\'' +
                ", addition2='" + addition2 + '\'' +
                ", addition3='" + addition3 + '\'' +
                ", addition4='" + addition4 + '\'' +
                ", addition5='" + addition5 + '\'' +
                '}';
    }
}
